package org.xw.service;

import jakarta.servlet.http.HttpServletRequest;
import org.xw.dto.GzhDTO;
import org.xw.pojo.GzhArticlePojo;
import org.xw.pojo.GzhPojo;
import org.xw.pojo.MyGzhPojo;
import org.xw.utils.ResponseUtil;

import java.util.List;

public interface GzhService {
    /**
     * 注册
     *
     * @param
     * @return
     */
    ResponseUtil registerOfficialAccount(GzhPojo gzhPojo);

    /**
     * 注销公众号
     *
     * @param gzhId
     * @return
     */
    boolean deleteOfficialAccount(Integer gzhId);

    int updateOfficialAccount(GzhPojo gzhPojo);

    /**
     * 搜索公众号
     *
     * @param
     * @param gzhName
     * @return
     */
    ResponseUtil searchOfficialAccount(String gzhName);

    /**
     * 用户管理公众号
     *
     * @param
     * @param gzhId
     */
    ResponseUtil followOfficialAccount(HttpServletRequest httpServletRequest, Integer gzhId);

    /**
     * 查看公众号列表
     *
     * @param
     * @return
     */
    List<GzhDTO> getOfficialAccountList(Integer gzhId);

    /**
     * 查看公众号详情
     *
     * @param id
     * @return
     */
    GzhPojo getOfficialAccount(Integer id);

    /**
     * 查看公众号文章列表
     *
     * @param gzhId
     * @return
     */
    List<GzhArticlePojo> getGzhArticleList(HttpServletRequest httpServletRequest, Integer gzhId);

    /**
     * 查看公众号文章
     *
     * @param id
     * @return
     */
    GzhArticlePojo getOfficialAccountArticles(Integer id);

    /**
     * 公众号管理文章
     */
    ResponseUtil publishArticle(GzhArticlePojo gzhArticlePojo);

    boolean deleteArticle(GzhArticlePojo articlePojo);


    /**
     * 编辑文章
     *
     * @param
     * @return
     */
    ResponseUtil updateArticle(GzhArticlePojo gzhArticlePojo);

}
